{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import tensorflow as tf\n",
    "from tensorflow import keras \n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "#数据分类\n",
    "mnist=keras.datasets.mnist\n",
    "(train_images,train_labels),(test_images,test_labels)=mnist.load_data()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "#定义标签\n",
    "class_names=['0','1','2','3','4',\n",
    "             '5','6','7','8','9']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(60000, 28, 28)\n",
      "60000\n",
      "(10000, 28, 28)\n",
      "10000\n"
     ]
    }
   ],
   "source": [
    "#打印训练集数据大小\n",
    "print(train_images.shape)\n",
    "#打印训练集标签大小\n",
    "print(len(train_labels))\n",
    "#打印测试集数据大小\n",
    "print(test_images.shape)\n",
    "#打印测试集标签大小\n",
    "print(len(test_labels))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#打印训练集中第一张图片\n",
    "plt.figure()\n",
    "plt.imshow(train_images[0])\n",
    "plt.grid(False)\n",
    "plt.colorbar()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "#图片归一化处理（像素值缩放到0-1之间）\n",
    "train_images=train_images/255.0\n",
    "test_images=test_images/255.0"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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lHkf//jHiz0gIuL6669vrN95553FHgcccECXpmE0LV++vLH+hz/8odjj7rvvbqznnIc0E1CXu+66q7H++OOPj9IkuHMHAAAAoGKWOwAAAAAVs9wBAAAAqJjlDgAAAEDFLHcAAAAAKma5AwAAAFAxyx0AAACAilnuAAAAAFRsbK8HWFNNnjy5eGaTTTZprD/88MPdGmdE7bjjjsUzG2+8cWP9hz/8YbHH2muv3Vg/+OCDiz2A3jj88MOLZ84999xRmKRz8+bNa6z/9a9/LfbYZZddGuvXX399sceCBQuKZ2AwZs+e3VjfaaedRmkSRtt9993XWJ81a1axR+nnr2233XZIMwHtce211xbPzJw5s+PrlHLisssuK/bYbLPNOp6jdu7cAQAAAKiY5Q4AAABAxSx3AAAAACpmuQMAAABQMcsdAAAAgIpZ7gAAAABUzHIHAAAAoGJjez3Amup5z3te8cznP//5xvoPfvCDYo9XvvKVjfUPf/jDxR4l22+/fWP92muvLfYYN25cY/22224r9pg5c2bxDNAb8+bNa6xfdtllxR45545mmDZtWvHMm9/85sb6cccdV+yx+eabN9ZLuRwRsfHGGzfWf/jDHxZ7dPp8wdOWL1/e6xHokfe///0d99h66627MAnQCz/+8Y8b64ceemixx9KlSzue41/+5V8a65MnT+74Gv3AnTsAAAAAFbPcAQAAAKiY5Q4AAABAxSx3AAAAACpmuQMAAABQMcsdAAAAgIpZ7gAAAABUzHIHAAAAoGJjez1AP9t///0b67vttluxx4YbbthYv/XWW4s9TjvttMb6cccd11gfN25c8RolL3vZy4pnZs2a1fF1gKGbP39+8cwb3/jGxvrSpUuLPVJKjfV99tmnsX7eeecVr3H99dc31j/72c8We7z//e9vrE+YMKHY4xWveEVjvfRcRERcfvnljfWbb7652ONVr3pV8Qx1G8zPAYsWLRqFSWijhx56qOMee+yxRxcmAXph9uzZjfV7772342tMmzateObd7353x9dhEHfupJROTyktTindttJjz0spXZNSunPg48YjOybQ72QR0BbyCGgDWQSsbDAvyzojIvZ+1mMnRMR1OeetI+K6ga8BRtIZIYuAdjgj5BHQe2eELAIGFJc7Oec5EfHgsx7eLyKevodrdkQ0v74IoEOyCGgLeQS0gSwCVjbc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J++WBQAAAECPWe4AAAAAVMxyBwAAAKBiljsAAAAAFbPcAQAAAKiY5Q4AAABAxSx3AAAAACo2ttcD0B822mijxvrBBx9c7PH+97+/sf7EE08Ue8yZM6exfv311xd7TJs2rXgGarLuuus21idOnDhKk9Th8ccfb6x/5jOfKfaYMWNGY33SpEnFHscee2xjfYMNNij2gIiIj370o70egWG47rrrOu7xD//wD12YBHi2+fPnN9avuuqqEZ9h3333LZ7ZZpttRnwORo87dwAAAAAqZrkDAAAAUDHLHQAAAICKWe4AAAAAVMxyBwAAAKBiljsAAAAAFbPcAQAAAKjY2F4PQP1uvfXW4pnvfe97jfWbbrqp2OOJJ54Y9Eyrs9122zXW3/CGN3R8DajNvvvu2+sRWmP+/PnFMzNmzGisf/e73y322G+//RrrF154YbEHQKf233//Xo8Aa6Q999yzsf7f//3fHV9jxx13bKzPnj2742tQF3fuAAAAAFTMcgcAAACgYpY7AAAAABWz3AEAAAComOUOAAAAQMUsdwAAAAAqZrkDAAAAUDHLHQAAAICKje31APTer3/968b6V77ylcb6hRdeWLzG/fffP6SZhmPs2PJf54kTJzbWn/Mc+07qknPuqB4RcfHFFzfWTz311CHN1GZf/OIXG+uf/vSniz0efvjhxvq73vWuYo8zzzyzeAYAqNMDDzzQWB8zZkzH1zjyyCMb6xtssEHH16Au/iULAAAAUDHLHQAAAICKWe4AAAAAVMxyBwAAAKBiljsAAAAAFbPcAQAAAKiY5Q4AAABAxcb2egA6c//99zfWzz333GKPr371q431hQsXDmWkEfOa17ymsf6JT3yi2GPfffft1jjQCimljuoR5Rz58Ic/XOzx3ve+t7H+N3/zN8UeP/3pTxvrZ511VmP9lltuKV7jj3/8Y2N98uTJxR577713Y/2II44o9gBogzvvvLOx/trXvnaUJoF6vOc97ymeyTk31p966qmO59hpp5067sGapXjnTkppUkrphymlX6WUfplSOmbg8eellK5JKd058HHjkR8X6FeyCGgDWQS0gSwCnm0wL8t6MiKOzTm/JCL+LiKOTCltFxEnRMR1OeetI+K6ga8BRoosAtpAFgFtIIuAZygud3LO9+Wcbx74/C8R8auI2CIi9ouI2QPHZkfE/iM1JIAsAtpAFgFtIIuAZxvSL1ROKU2JiFdGxM8iYrOc830RK8IlIjbt9nAAqyKLgDaQRUAbyCIgYgjLnZTSBhHx/Yj4SM556RD+3GEppbkppblLliwZzowA/0sWAW0gi4A2kEXA0wa13EkprRUrQuOcnPOFAw8vSilNHKhPjIjFq/qzOedZOeepOeepEyZM6MbMQJ+SRUAbyCKgDWQRsLLBvFtWiohvR8Svcs5fXKl0aUQcMvD5IRFxSffHA1hBFgFtIIuANpBFwLONHcSZnSPi4IhYkFKaP/DYxyPi5Ii4IKX0voi4OyLePjIjAkSELALaQRYBbSCLgGcoLndyzj+OiLSa8u7dHae/LFq0qLH+y1/+stjjqKOOaqzfcccdQ5pppOy4446N9eOPP77YY7/99musP+c5Q/r94FRGFo2cJ598srH+ta99rdjje9/7XmP9uc99brHHb37zm+KZTu20006N9d12263Y46STTurWOFRIFrEmWb58ea9HYJhk0ciZP39+Y/2aa64p9lhxY9XqrbPOOsUeRxxxRGN9s802K/agv/jXMAAAAEDFLHcAAAAAKma5AwAAAFAxyx0AAACAilnuAAAAAFTMcgcAAACgYpY7AAAAABUb2+sBavXggw821g8//PBij/nz5zfWf/e73w1pppGy8847N9aPPfbYYo+99tqrsb7eeusNaSZghde+9rWN9R122KHY4+c//3nHc9x///2N9UWLFnV8jU022aSxfuCBBxZ7nHrqqR3PAbCm+MlPftJYP/TQQ0dnEGiRhx56qLHejZ9pNt988+KZL3zhCx1fh/7izh0AAACAilnuAAAAAFTMcgcAAACgYpY7AAAAABWz3AEAAAComOUOAAAAQMUsdwAAAAAqZrkDAAAAULGxvR6gF372s5811mfMmFHscdNNNzXW77nnniHNNFLWX3/94pkPf/jDjfVPfOITjfVx48YNaSage17wghc01i+88MJij29+85uN9U9/+tNDmmm4jjnmmMb6hz70ocb61ltv3c1xAACgGu7cAQAAAKiY5Q4AAABAxSx3AAAAACpmuQMAAABQMcsdAAAAgIpZ7gAAAABUzHIHAAAAoGJjez1AL1x00UUd1btlu+22a6y/5S1vKfYYM2ZMY/24444r9thoo42KZ4A6TZw4sXhm+vTpHdUBGH1vetObGusXXHDBKE0Ca5Ztt922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j1133bV1zTXXXDNQfSI584tf/KKxfscdd7Tuse222zbWzz777NY9gG4cd9xxrWva8uq+++4buI9Vq1Y11o855pjWPR544IGB+wC6sffee7euafu5py0nNt9889ZjHHDAAa1rqEfrnTuZeXZm3pWZ16313MmZ+YvMXDz264XT2yYw6mQR0BfyCOgDWQSsbSIvyzonIp4/zvMfKKXsOfbrq8NtC+CPnBOyCOiHc0IeAd07J2QRMKZ1uFNKuSIi7p2BXgDWSxYBfSGPgD6QRcDaBnlD5WMy88djtwNuNbSOACZHFgF9IY+APpBFMIKmOtw5MyJ2iYg9I2J5RJy+voWZuSAzF2bmwhUrVkzxcADjkkVAX0woj2QRMM1kEYyoKQ13Sil3llJ+X0p5JCI+GRHrfbvvUspZpZR5pZR5s2fPnmqfAH9EFgF9MdE8kkXAdJJFMLqmNNzJzO3X+vbQiLhufWsBpossAvpCHgF9IItgdM1qW5CZ50fEfhGxTWbeHhHviIj9MnPPiCgRcUtEHD2NPdKx/fffv7F+2WWXzVAnjDJZNL4LL7ywsf6a17ymdY9NNtmksf7Yxz62dY8vfOELjfWttmp/yf8JJ5zQWP/ud7/bWL/mmmtaj1FKaaxnZused999d2N9xx13bN3jP/7jPxrru+yyS+sedEcebdhe8IIXTPsx2rLopptuat3jlFNOaawvXry4dY9ly5Y11nfeeefWPeiOLJoeV199dWN9r732at2j7Werr33ta617fPjDH26st2XA4Ycf3nqMq666qrG+2267te5Bf7QOd0opR4zz9KenoReA9ZJFQF/II6APZBGwtkE+LQsAAACAjhnuAAAAAFTMcAcAAACgYoY7AAAAABUz3AEAAAComOEOAAAAQMUMdwAAAAAqNqvrBui/nXbaaeA9Hn744cb6smXLWvfYeeedB+4DNjSf+MQnGus77rhj6x4nnXRSY/21r33tpHqaqo9+9KON9QULFjTWv//97w+znfV65JFHGuv7779/6x677LLLsNoBKtT2c9Epp5wy8DE22WST1jUbbbTRwMeBPlm+fHlj/eCDD27d47bbbmusf+ADH2jd45WvfGVjfeutt27d45hjjmmst+XEypUrW4/xq1/9qnUN9XDnDgAAAEDFDHcAAAAAKma4AwAAAFAxwx0AAACAihnuAAAAAFTMcAcA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V7ziFY31UsrAfVxyySWN9fnz5w98DKC/HvWoR7WuefKTn9xY/8UvftFYv+uuuybVE0BXTj/99Mb6ww8/3LrH0qVLG+vnnXfepHoaT9vfVyMirr/++oGPUzt37gAAAABUzHAHAAAAoGKGOwAAAAAVM9wBAAAAqJjhDgAAAEDFDHcAAAAAKma4AwAAAFAxwx0AAACAis3quoFh+8Y3vtG65qc//Wlj/SlPecrAfTzqUY9qXbP99tsPfJw+WLlyZeuaPfbYo7G+bNmygfu47LLLWtf81V/91cDHASbvc5/7XOuaW2+9tbF+8MEHN9Y//vGPtx5jzpw5rWuA0fb617++sf6d73ynsX7DDTcMsx1gRH33u99trC9ZsqSxfsUVV7Qe45JLLmmsP/LII617tMnMgfe46aabWtfstttujfWlS5cO3EffuXMHAAAAoGKGOwAAAAAVM9wBAAAAqJjhDgAAAEDFDHcAAAAAKma4AwAAAFAxwx0AAACAis3quoFh22WXXYayhom77LLLWtcsW7Zs4ONsttlmjfXXve51Ax8DmJpnPetZjfXFixe37jF37tzG+hlnnNFYnzNnTusxANrsvffeA/3+iy66qHXN+973vsb69ttvP1APwNQtX768sX7EEUe07nHzzTcP3Mf999/fWH/wwQcb66WU1mPMmzevsb5o0aLWPWbC73//+9Y1v/nNb2agk35z5w4AAABAxQx3AAAAACpmuAMAAABQMcMdAAAAgIoZ7gAAAABUzHAHAAAAoGKGOwAAAAAVM9wBAAAAqNisrhugew8//HBj/bjjjmusn3vuucNsZ72+973vNdb32muvGekDRs2Xv/zl1jVXX311Yz0zW/d42cte1ljffPPNW/cA6NpDDz3UuubSSy9trB999NHDagdYyze/+c3WNX/3d3/XWL/11luH1c60Wrp0aeuabbbZprF+9913t+5xxx13NNZf85rXtO5x2223ta5ps/vuuw+8R+1a79zJzLMz867MvG6t57bOzMsz82djX7ea3jaBUSeLgL6QR0AfyCJgbRN5WdY5EfH8dZ57S0R8q5Sya0R8a+x7gOl0TsgioB/OCXkEdO+ckEXAmNbhTinlioi4d52n50fEmtfinBsRhwy5L4A/IIuAvpBHQB/IImBtU31D5ceXUpZHRIx93XZ9CzNzQWYuzMyFK1asmOLhAMYl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aVnOc9lll028x+mnn95Zn8Y9fuutt3bWF9OL7r333s76m9/85t3KtDMbNmzoXXP11bt8FSJLTD9iUscdd9ysI7AX0Ivoctppp/WuqaqJz3PNNdd01tevXz/xOVic3uFOa+2cnRy+dgmyAOySXgQMhX4EDIFeBOxoknfLAgAAAGDGDHcAAAAARsxwBwAAAGDEDHcAAAAARsxwBwAAAGDEDHcAAAAARsxwBwAAAGDEVsw6ACTJeeed17vm7LPP7qyffPLJvXvcfffdi860p3784x8v+TlgsbZu3dq7prXWWX/Pe94zcY6HHnqod81jjz3WWe/LuXHjxt5zrF27trP+wx/+sHePc889t7PelzPpz7phw4bePYDxOvroo2cdARi5Sy+9tLO+mJ9HpqHvZyuWjyd3AAAAAEbMcAcAAABgxAx3AAAAAEbMcAcAAABgxAx3AAAAAEbMcAcAAABgxAx3AAAAAEZsxawDwGKtWNH9z/X1r3997x533333tOLs0jHHHLPk54BpqqpZR0iS7Lvvvp31vpybNm3qPcfhhx/eWf/d737Xu8dRRx3VWb/nnnt693jJS17SuwYAmF/PPPNMZ/3BBx/srC/m57u+NR//+Md793j1q1/du4bl4ckdAAAAgBEz3AEAAAAYMcMdAAAAgBEz3AEAAAAYMcMdAAAAgBEz3AEAAAAYMcMdAAAAgBEz3AEAAAAYsRWzDjDPnnjiic76Zz7zmd49jj322M76WWedtVuZhuzZZ5/trH/ve99blhwrV67srJ944onLkgMW49RTT+1dc+WVV3bWb7311t497r333s76Yu7Pbdu29a7pct111/Wuaa111letWtW7x+WXX95ZP+yww3r3AObb73//+1lHAGboN7/5Te+aL3/5y531b33rWxPnOPfcczvr5513Xu8e++zjeZGh8DcBAAAAMGKGOwAAAAAjZrgDAAAAMGKGOwAAAAAjZrgDAAAAMGKGOwAAAAAjZrgDAAAAMGIrZh1gb/WLX/yid80pp5zSWd+0aVPvHlu3bl10piHbvHlz75qNGzd21u+8885pxen0mte8prP+lre8ZVlywGLst99+vWsOOOCAzvqvf/3r3j1OOumkznpV9e6xHA466KDO+plnntm7x7ve9a5pxQHm1O23395Zv+iii5YpCbAUtm3b1ll/73vf27vHzTffPFGGj33s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\n",
      "text/plain": [
       "<Figure size 1440x1440 with 16 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#可视化训练集前16张图片，并在图像下方显示类别\n",
    "plt.figure(figsize=(20,20))\n",
    "for i in range(16):\n",
    "    plt.subplot(4,4,i+1)\n",
    "    plt.xticks()\n",
    "    plt.yticks()\n",
    "    plt.grid(False)\n",
    "    plt.imshow(train_images[i],cmap=plt.cm.binary)\n",
    "    plt.xlabel(class_names[train_labels[i]])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "#定义网络\n",
    "model = keras.Sequential([\n",
    "    keras.layers.Flatten(input_shape=(28, 28)),\n",
    "    keras.layers.Dense(128, activation='relu'),\n",
    "    keras.layers.Dense(10)\n",
    "])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 编译模型\n",
    "\n",
    "model.compile(optimizer='adam',\n",
    "              loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),\n",
    "              metrics=['accuracy'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train on 60000 samples, validate on 10000 samples\n",
      "Epoch 1/20\n",
      "60000/60000 - 2s - loss: 0.0015 - accuracy: 0.9996 - val_loss: 0.1400 - val_accuracy: 0.9788\n",
      "Epoch 2/20\n",
      "60000/60000 - 2s - loss: 0.0038 - accuracy: 0.9988 - val_loss: 0.1309 - val_accuracy: 0.9806\n",
      "Epoch 3/20\n",
      "60000/60000 - 2s - loss: 0.0027 - accuracy: 0.9992 - val_loss: 0.1341 - val_accuracy: 0.9803\n",
      "Epoch 4/20\n",
      "60000/60000 - 2s - loss: 0.0046 - accuracy: 0.9985 - val_loss: 0.1497 - val_accuracy: 0.9785\n",
      "Epoch 5/20\n",
      "60000/60000 - 2s - loss: 0.0027 - accuracy: 0.9990 - val_loss: 0.1498 - val_accuracy: 0.9784\n",
      "Epoch 6/20\n",
      "60000/60000 - 2s - loss: 0.0035 - accuracy: 0.9988 - val_loss: 0.1590 - val_accuracy: 0.9774\n",
      "Epoch 7/20\n",
      "60000/60000 - 2s - loss: 0.0026 - accuracy: 0.9991 - val_loss: 0.1578 - val_accuracy: 0.9799\n",
      "Epoch 8/20\n",
      "60000/60000 - 2s - loss: 0.0012 - accuracy: 0.9997 - val_loss: 0.1680 - val_accuracy: 0.9781\n",
      "Epoch 9/20\n",
      "60000/60000 - 2s - loss: 0.0055 - accuracy: 0.9982 - val_loss: 0.1636 - val_accuracy: 0.9771\n",
      "Epoch 10/20\n",
      "60000/60000 - 2s - loss: 0.0029 - accuracy: 0.9990 - val_loss: 0.1422 - val_accuracy: 0.9804\n",
      "Epoch 11/20\n",
      "60000/60000 - 2s - loss: 0.0029 - accuracy: 0.9990 - val_loss: 0.1615 - val_accuracy: 0.9800\n",
      "Epoch 12/20\n",
      "60000/60000 - 2s - loss: 0.0011 - accuracy: 0.9995 - val_loss: 0.1486 - val_accuracy: 0.9804\n",
      "Epoch 13/20\n",
      "60000/60000 - 2s - loss: 0.0043 - accuracy: 0.9989 - val_loss: 0.1523 - val_accuracy: 0.9786\n",
      "Epoch 14/20\n",
      "60000/60000 - 2s - loss: 9.2735e-04 - accuracy: 0.9996 - val_loss: 0.1538 - val_accuracy: 0.9808\n",
      "Epoch 15/20\n",
      "60000/60000 - 2s - loss: 0.0052 - accuracy: 0.9983 - val_loss: 0.1550 - val_accuracy: 0.9801\n",
      "Epoch 16/20\n",
      "60000/60000 - 2s - loss: 0.0022 - accuracy: 0.9992 - val_loss: 0.1638 - val_accuracy: 0.9795\n",
      "Epoch 17/20\n",
      "60000/60000 - 2s - loss: 0.0021 - accuracy: 0.9994 - val_loss: 0.1524 - val_accuracy: 0.9804\n",
      "Epoch 18/20\n",
      "60000/60000 - 2s - loss: 0.0029 - accuracy: 0.9990 - val_loss: 0.1475 - val_accuracy: 0.9810\n",
      "Epoch 19/20\n",
      "60000/60000 - 2s - loss: 0.0013 - accuracy: 0.9997 - val_loss: 0.1564 - val_accuracy: 0.9812\n",
      "Epoch 20/20\n",
      "60000/60000 - 2s - loss: 0.0028 - accuracy: 0.9991 - val_loss: 0.1842 - val_accuracy: 0.9774\n"
     ]
    }
   ],
   "source": [
    "# 训练模型\n",
    "\n",
    "# 开始训练，调用该model.fit方法\n",
    "history=model.fit(train_images,train_labels,\n",
    "                  epochs=20,\n",
    "                  verbose=2,\n",
    "                  validation_data=(test_images,test_labels))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#损失函数\n",
    "val_loss=history.history['val_loss']\n",
    "epochs=range(1,len(val_loss)+1)\n",
    "plt.figure()\n",
    "plt.plot(epochs,val_loss,'b')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "10000/1 - 0s - loss: 0.0921 - accuracy: 0.9774\n",
      "\n",
      "Test accuracy 0.9774\n",
      "\n",
      "Test loss 0.1842089523191114\n"
     ]
    }
   ],
   "source": [
    "# 评估准确性\n",
    "# 比较模型在测试数据集上的表现\n",
    "test_loss, test_acc = model.evaluate(test_images, test_labels, verbose=2)\n",
    "print('\\nTest accuracy', test_acc)\n",
    "print('\\nTest loss', test_loss)\n",
    "#测试精度0.9774"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 作出预测\n",
    "probability_model = tf.keras.Sequential([model, tf.keras.layers.Softmax()])\n",
    "predictions = probability_model.predict(test_images)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[1.4823855e-25 7.4976673e-36 1.9092087e-18 4.0334394e-14 0.0000000e+00\n",
      " 8.6073468e-27 4.3187363e-38 1.0000000e+00 6.8597491e-22 3.2451543e-21]\n"
     ]
    }
   ],
   "source": [
    "# 预测：\n",
    "print(predictions[0])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 以图形方式查看完整的10个类预测\n",
    "def plot_image(i, predictions_array, true_label, img):\n",
    "    predictions_array, true_label, img = predictions_array, true_label[i], img[i]\n",
    "    plt.grid(False)\n",
    "    plt.xticks([])\n",
    "    plt.yticks([])\n",
    "\n",
    "    plt.imshow(img, cmap=plt.cm.binary)\n",
    "\n",
    "    predicted_label = np.argmax(predictions_array)\n",
    "    if predicted_label == true_label:\n",
    "        color = 'blue'\n",
    "    else:\n",
    "        color = 'red'\n",
    "\n",
    "    plt.xlabel(\"{} {:2.0f}% ({})\".format(class_names[predicted_label],\n",
    "                                100*np.max(predictions_array),\n",
    "                                class_names[true_label]),\n",
    "                                color=color)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [],
   "source": [
    "def plot_value_array(i, predictions_array, true_label):\n",
    "    predictions_array, true_label = predictions_array, true_label[i]\n",
    "    plt.grid(False)\n",
    "    plt.xticks(range(10))\n",
    "    plt.yticks([])\n",
    "    thisplot = plt.bar(range(10), predictions_array, color=\"#777777\")\n",
    "    plt.ylim([0, 1])\n",
    "    predicted_label = np.argmax(predictions_array)\n",
    "\n",
    "    thisplot[predicted_label].set_color('red')\n",
    "    thisplot[true_label].set_color('blue')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x216 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 验证预测（运行）\n",
    "\n",
    "i = 0\n",
    "plt.figure(figsize=(6, 3))\n",
    "plt.subplot(1, 2, 1)\n",
    "plot_image(i, predictions[i], test_labels, test_images)\n",
    "plt.subplot(1, 2, 2)\n",
    "plot_value_array(i, predictions[i], test_labels)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x216 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#查看第二个\n",
    "i = 12\n",
    "plt.figure(figsize=(6,3))\n",
    "plt.subplot(1,2,1)\n",
    "plot_image(i, predictions[i], test_labels, test_images)\n",
    "plt.subplot(1,2,2)\n",
    "plot_value_array(i, predictions[i],  test_labels)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1IAAALICAYAAAB1rMGWAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdeZgU1b3/8c/XGZBNdsSFZRJRhHBlEaNoJAaFoBJcolFDDD/jTaJR45KERK+7xi1EjYYbxS3mEkRFRcAFcUHxcWVfXEHBEFEYIO5hkfP7owszp2a6ug/TPdPL+/U8/TifnlPV3xl7vsypqjNlzjkBAAAAALK3Q2MXAAAAAADFhokUAAAAAARiIgUAAAAAgZhIAQAAAEAgJlIAAAAAEKgyZHDHjh1dVVVVnkpBQ1mxYoWqq6stV/vjfdEwFi6UtmzJPK6yUurbN//11DR37txq51ynXO6T91VpyHW/kRrvvZHNz2Bj/PyVI3oO0inU33EK+d9wJEvqN0ETqaqqKs2ZMyc3VaHRDBw4MKf7433RMCzLfxa2bJEa+n+Hma3M9T55X5WGXPcbqfHeG9n8DDbGz185oucgnUL9HaeQ/w1HsqR+w6V9AAAAABCIiRQAAAAABGIiBQAAAACBmEgBAAAAQCAmUgAAAAAQiIkUAAAAAARiIgUAAAAAgZhIAQAAAEAgJlIAAAAAEKiysQsAgGI1duxYL3/xxRdeXrRokZcnT56ccZ+nn366lwcNGuTlk08+OaREAACQJ5yRAgAAAIBATKQAAAAAIBATKQAAAAAIxBopAMjSCSec4OX7778/aHszyzjmlltu8fKTTz7p5W9/+9te7tatW1ANAJDkrbfe8nLPnj29fNNNN3n5rLPOyntNQKHijBQAAAAABGIiBQAAAACBmEgBAAAAQCAmUgAAAAAQiD82AQBp1PePS+y9995eHj58uJffeeedWttMnTrVy8uWLfPyhAkTvHzBBRcE1QQASebPn+/lHXbwj7nvvvvuDVkOUNA4IwUAAAAAgZhIAQAAAEAgJlIAAAAAEIg1UgAQmTNnjpcfeuihxPF9+vTxcnx9U8eOHb3cqlUrL2/atKnWPvfff38vL1y40Mvr1q1LrAkA6mPBggVejvetY489tiHLAQoaZ6QAAAAAIBATKQAAAAAIxEQKAAAAAAIV3BqpyZMne/m2227z8m677eblZs2aeXnUqFFe3mWXXbzco0eP+pYIoEStXr3ay845L8fXRM2YMcPLu+66a9DrjR07ttZzr7/+euI2I0aMCHoNAEiyePFiL998881e/vGPf9yQ5QBFhTNSAAAAABCIiRQAAAAABGIiBQAAAACBCm6N1G9+8xsvr1ixImj7W265xcutW7f2cu/evberrlzq2rWrl8eMGePlgQMHNmQ5ACLf+973vLxs2TIv77TTTl5u3759vV7v3nvvrfVcXfeWAoB8efPNN7382WefefmEE05oyHKAosIZKQAAAAAIxEQKAAAAAAIxkQIAAACAQAW3Rur222/38sKFC70cX+P02muveXn+/PlenjVrlpdfeuklL3fr1s3L7733Xta1btOkSRMvd+zY0cvxe9PEa4ivmWKNFFAYunfvntP9/eEPf/DyW2+9lXGb/fffPzEDQH1cd911Xq6qqvIyv5MA6XFGCgAAAAACMZECAAAAgEBMpAAAAAAgUMGtkTr00EMTc9zw4cMTP79hwwYvx9dQxa/9ffXVVzOVWMuOO+7o5Z49e3p577339vL69eu9vMceewS/JoDCN336dC9ffPHFXt64cWOtbTp37uzla665xsstWrTIUXUAyk1d9+aM/94T/x2mZcuW+SwJKGqckQIAAACAQEykAAAAACAQEykAAAAACFRwa6RyrV27dl4eMmRI4vhMa7Ky8cADD3g5vk5rn3328fKJJ55Y79cEUHjmzJnj5brWRMWdcMIJXv72t7+d05oAlK9nn30245hOnTo1QCVAaeCMFAAAAAAEYiIFAAAAAIGYSAEAAABAoJJfI9UQ1qxZ4+Vf/OIXXnbOeTl+L5n27dvnpzAADeroo4/28owZMxLHjx49utZzV155ZU5rAoBtFi1alHHMmDFjGqASoDRwRgoAAAAAAjGRAgAAAIBATKQAAAAAIBBrpHJg3LhxXo6vmWrbtq2Xe/bsmfeaAOTf6tWrvfzCCy94OX7fqPj9WS688MJa+2zVqlWOqgNQ7l588UUv33XXXbXG9O/f38tDhw7Na01AKeGMFAAAAAAEYiIFAAAAAIGYSAEAAABAINZIbYfnn3/ey9dcc03i+IcfftjLffr0yXlNABrescce6+Xq6urE8aNGjfLyHnvskfOaAGCbp556yssbNmyoNWb48OFebtas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qriZ2cpc75N+Uxpy3W+k0n1vZNMz6Zcp9Byk01C/44Tid6LildRvuLQPAAAAAAIxkQIAAACAQEykAAAAACAQEykAAAAACMRECgAAAAACMZECAAAAgEBMpAAAAAAgEBMpAAAAAAjERAoAAAAAAjGRAgAAAIBATKQAAAAAIBATKQAAAAAIxEQKAAAAAAJVNnYBDe2zzz7z8m9+8xsv33LLLbW2GThwoJfvv/9+L3fv3j1H1QEAAAAoBpyRAgAAAIBATKQAAAAAIBATKQAAAAAIxEQKAAAAAAKV3R+beP/997182223ebmioqLWNnPmzPHytGnTvHzmmWfmqDoAxWTevHlePvbYY728YsWKBqwm5YknnvByr169vNy1a9eGLAdAkYn/jjNy5Egv33zzzV4+/fTTvVzX71FAqeKMFAAAAAAEYiIFAAAAAIGYSAEAAABAoJJfI7V27Vovjx49upEqAVBqZsyY4eWNGzc2UiX/MXXqVC/feeedXp40aVJDlgOgwK1bt87L8TVPcWeddZaXTz31VC83b948N4UBRYAzUgAAAAAQiIkUAAAAAARiIgUAAAAAgUpujdRNN93k5SlTpnj51VdfrfdrzJ4928vOOS/37dvXy4MHD673awJofFu2bPHyo48+2kiVpDdw4EAvX3/99V7+7LPPvNyyZcu81wSgcD333HNe/uc//5k4/qSTTvJys2bNcl4TUCw4IwUAAAAAgZhIAQAAAEAgJlIAAAAAEKjk1kidc845Xq6oqMj5azz44IOJuVu3bl6+7777vLzvvvvmvCYA+ffMM894+YUXXvDyb3/724Ysp07r16/38tKlS738+eefe5k1UkD5qOted1deeWXQPk4++WQvm1m9agKKGWekAAAAACAQEykAAAAACMRECgAAAAACFf0aqSOOOMLL8Xs6ffnll/V+jY4dO3o5vqZg5cqVXn733Xe9vN9++3l569at9a4JQP4tXrzYyyeeeKKXe/To4eULLrgg7zVlMnXq1MYuAUCBWrRoUa3n5s2bl7hNZaX/q+Lhhx+e05qAYsYZKQAAAAAIxEQKAAAAAAIxkQIAAACAQEW3RurZZ5/18htvvOHl+P0MQu8jddppp9V6btiwYV5u06aNl59++mkv//73v098jb/85S9ePv3000NKBNBA4j/L8XswTZgwwcutWrXKe01x8ftGxXsk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sXXr1qDXBBoKZ6QAAAAAIBATKQAAAAAIxEQKAAAAAAIV3Rqp+I3hvvGNb3g5vt6oc+fOXi7ENVEDBgzwcnV1tZfnzJlTax977rln7gsDUC8ff/yxl3/3u995eenSpV5+8skna+2D9Y8Attfy5cu9PG7cOC+PHz++1jZffPGFl51zOa3pzTffzOn+gELCGSkAAAAACMRECgAAAAACMZECAAAAgEAFv0Yqvl4ofp+odevWefmMM87w8s0335yfwurhyiuv9PK7777r5fg1zKyHAgrThAkTvHzhhRd6+b333kvcPr6mSpI6dOhQ/8IAlKVVq1Z5+cYbb2zwGvbee28v9+nTp8FrABoKZ6QAAAAAIBATKQAAAAAIxEQKAAAAAAIV/BqpefPmeXnWrFmJ4y+++OI8VrN9lixZ4uWxY8d6+ZhjjvHyCSeckPeaAISLrz8499xzvRxf02lmifs766yzaj335z//2cvt27cPKRFAEYv3kPgap29961teHj58uJebNm3q5TZt2ni5VatWtV7z008/9fJ3v/tdL8fXOO2///5e7t+/v5ebN2/u5ZYtW9Z6TaBUcEYKAAAAAAIxkQIAAACAQEykAAAAACBQwa2RWrNmjZcfeOCBxPF33nmnlzt16pTzmkLF10QNHTo0cfyxxx7r5Z122innNQGov/j6xvh97EJNmjSp1nOPPfaYl+P3poqvq4qviQBQPD777DMvx39fWLhwoZenTJmSuL9BgwZ5ef78+V6uqqqqtU38fnddunTx8g47cMwdSIefDgAAAAAIxEQKAAAAAAIxkQIAAACAQAW3RupXv/qVlydMmODlAQMGePn444/Pe02hnn/+eS9/8MEHXj7llFO8/KMf/SjvNQEIt3LlSi/fddddieP79u3r5c6dO3t55syZGV/zo48+8nJ8XdaoUaO8vMsuu2TcJ4DCsGnTJi//8Ic/9HJ8TdQFF1zg5cMOOyzo9epaExXXrVu3oH0C+A/OSAEAAABAICZSAAAAABCIiRQAAAAABCq4NVJmlph33313LzfGPVS++OILL1911VVeHjdunJfjX0P83lcACtOCBQu8/PHHH3t58ODBXn722We9/O9//9vLEydO9PLVV19d6zWXLVvm5fgay6OOOsrL8ftOtW/fvtY+ATSOTz/91Mvx3xemTZvm5fi9MH/zm994uUWLFjmsDkB9cUYKAAAAAAIxkQIAAACAQEykAAAAACBQwa2RymT69OleHjZsmJfbtm3r5dNPP73erzlr1qzE/NJLLyVuX4j3ugKQ2caNG70cX+947rnnJm7frFkzL//kJz/x8uTJk2tts3z5ci8757wcXyPRGOtEAWRnypQpXr7mmmu83L17dy/Pnj3by23atMlPYQBygjNSAAAAABCIiRQAAAAABGIiBQAAAACBCm6N1Nlnn+3lp59+2svvv/++l+P3bYmvJ3j44YfrXVN8n/F1EnF77LGHl+P3jQBQHO65557Ezz/yyCNePvroo4P2P2fOnOCaDjjgAC+3atUqeB8AGsYLL7yQ+Pn+/ft7uUuXLvksB0COcUYKAAAAAAIxkQIAAACAQEykAAAAACBQwa2R2nfffb28ePFiLy9YsMDLjz/+uJevu+46L++8885eHj16dHBNJ598spf32WefxPEHHnigl+NrpgAUh5NOOsnL8TWXr776qpffeOMNL8f710MPPeTlDRs21HrN+L3w4mPGjx/v5Xh/6t27d619Amgcdd0rrqbHHnvMy5dddpmXR44c6eX4mioAjYszUgAAAAAQiIkUAAAAAARiIgUAAAAAgZhIAQAAAECggvtjE3Ht2rXz8ne+853EfO211+a8hnfeecfL8Rv09uvXz8tjx47NeQ0AGt5hhx3m5TZt2nh50aJFXu7Vq5eXM928e+jQobWeGzdunJdHjBjh5bfeesvLN910k5dvueWWxNcE0HDWrl3r5XhP2Lhxo5fjf2ziyiuv9PJpp53m5f3339/L//jHP7zco0cPL3/jG9/IULG0dOlSLw8aNMjL3DQY+A/OSAEAAABAICZSAAAAABCIiRQAAAAABCr4NVKF4PLLL/dy/Brn+E2AO3XqlPeaAORf+/btvXz//fd7+bjjjvPyRx995OX4espf/vKXXq5rTWezZs28fOyxx3r56quv9vKMGTO8vHz5ci9zQ3Cg8fz617/28h//+Meg7b/88ksvx9dQxnM+7Lzzzl4+5JBDvDxp0qS81wAUKs5IAQAAAEAgJlIAAAAAEIiJFAAAAAAEYo1UTHwNhCTdfffdXm7durWXO3TokNeaABSG+H2lJk+e7OWJEyd6uW3btl6Or7eMr4eqy0UXXeTl119/3csPP/xw4mvE+xeAhnPNNdd4+Qc/+IGXR40a5eXNmzd7edWqVV6Or5lqCGvWrPFy/PekPn36ePnCCy/Me01AoeCMFAAAAAAEYiIFAAAAAIGYSAEAAABAINZIxTz22GMZxxx55JFeHjBgQL7KAVDA4mum4jkXmjdv7uUTTjjBy/E1Us8884yX169f7+X4vbEA5E9FRYWX99tvPy+/9dZbids/9dRTXo6vobr00ku9/MorrwRWGC5+f7y5c+fm/TWBQsUZKQAAAAAIxEQKAAAAAAIxkQIAAACAQKyRiqlrjVTLli29/Otf/7qhygEAT/w+NFOnTvXypEmTvPznP//ZyxdffHF+CgOQc4ceemji5xcsWODl+BqpJk2aePmUU06ptY+f/vSnXr7hhhu8HL8/HoD/4IwUAAAAAARiIgUAAAAAgZhIAQAAAECgsl8jdcstt3j5gw8+qDWmc+fOXua+UQAayw47+Me/xowZ4+UpU6Z4OX6fmRNPPNHLe+21V+6KA9Cghg0b5uULLrjAy/H7To0fP77WPt5++20vz5o1K6iG3XffPWg8UEo4IwUAAAAAgZhIAQAAAEAgJlIAAAAAEIg1UrE1UmZWa8wRRxyRuI9PPvnEyxs2bPByt27dtrM6AEjWr18/L19xxRVejt/37vzzz/fyhAkTvNy8efMcVgcgn3r16uXlE044wcv33ntvxn0888wziZ+vrPR/VTzyyCO9fO2112Z8DaBUcUYKAAAAAAIxkQIAAACAQEykAAAAACBQ2a+Rykb8+uD4moIbbrjBy3369PHy3XffnZ/CACDmxz/+sZdvvfVWLz/44INejt9DZp999slPYQByLr6m8cYbb/RyfA333Llza+3jww8/9HJVVZWX4z0lfm86oJxxRgoAAAAAAjGRAgAAAIBATKQAAAAAIBBrpLJw2223efn222/38n//9397+aKLLsp7TQBQl06dOnn5ySef9HL37t29fM0113h54sSJ+SkMQN517tzZy9OnT/fy//3f/9Xa5sUXX/RyfA3UzjvvnJvigBLEGSkAAAAACMRECgAAAAACMZECAAAAgEBMpAAAAAAgUNn/sYmbb77Zy5dcckmtMYMHD/by6aef7uV27dp5uWnTpjmqDgDqp1u3bl4eOnSol6dOnerl1157rdY+evfunfvCADS4k08+OavnAGSHM1IAAAAAEIiJFAAAAAAEYiIFAAAAAIHKfo3UwQcf7OWnn366kSoBgPyb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\n",
      "text/plain": [
       "<Figure size 864x720 with 30 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#  绘制第一个X测试图像、它们的预测标签和真实标签。\n",
    "#  颜色正确的预测在蓝色和不正确的预测在红色。\n",
    "num_rows = 5\n",
    "num_cols = 3\n",
    "num_images = num_rows*num_cols\n",
    "plt.figure(figsize=(2*2*num_cols, 2*num_rows))\n",
    "for i in range(num_images):\n",
    "    plt.subplot(num_rows, 2*num_cols, 2*i+1)\n",
    "    plot_image(i, predictions[i], test_labels, test_images)\n",
    "    plt.subplot(num_rows, 2*num_cols, 2*i+2)\n",
    "    plot_value_array(i, predictions[i], test_labels)\n",
    "plt.tight_layout()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(28, 28)\n",
      "(1, 28, 28)\n",
      "[[7.9979093e-33 1.7952446e-13 1.0000000e+00 3.4799933e-26 0.0000000e+00\n",
      "  4.7492187e-29 1.8789606e-29 0.0000000e+00 1.6800773e-17 0.0000000e+00]]\n",
      "2\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWAAAAD6CAYAAACf653dAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAKHUlEQVR4nO3cf8yuBV3H8c+XAwIqGHAgdCGnHyZNG2UuykokBWujcmGxUFAoO264FeFIl662cGg2l39o0Q/CQinHKqstV5v/+E8rmJ1+mK5yOZtZYhZjSXTw2x/XdexAqNC8r+8zzuu1nT0/ONvnep7nvt/3dV/3w6nuDgDbO276AACOVQIMMESAAYYIMMAQAQYYIsAAQ45/NH95//79feDAgR0dymPToUPJ4cO73Tj++OT883e7Afz/3XXXXXd395kP/fyjCvCBAwdy5513fumO6hhQtfuNw4cTPxbYu6rqow/3eZcgAIYIMMAQAQYYIsAAQwQYYIgAAwwRYIAhAgwwRIABhggwwBABBhgiwABDBBhgiAADDBFggCECDDBEgAGGCDDAEAEGGCLAAEMEGGCIAAMMEWCAIQIMMESAAYYIMMAQAQYYIsAAQwQYYIgAAwwRYIAhAgwwRIABhggwwBABBhgiwABDBBhgiAADDBFggCECDDBEgAGGCDDAEAEGGCLAAEMEGGCIAAMMEWCAIQIMMESAAYYIMMAQAQYYIsAAQwQYYIgAAwwRYIAhAgwwRIABhggwwBABBhgiwABDBBhgiAADDBFggCECDDBEgAGGCDDAEAEGGCLAAEMEGGCIAAMMEWCAIQIMMESAAYYIMMAQAQYYIsAAQwQYYIgAAwwRYIAhAgwwRIABhggwwBABBhgiwABDBBhgiAADDBFggCECDDBEgAGGCDDAEAEGGCLAAEMEGGCIAAMMEWCAIQIMMESAAYYIMMAQAQYYIsAAQwQYYIgAAwwRYIAhAgwwRIABhggwwBABBhgiwABDBBhgiAADDBFggCECDDBEgAGGCDDAEAEGGCLAAEMEGGCIAAMMEWCAIQIMMESAAYYIMMAQAQYYIsAAQwQYYIgAAwwRYIAhAgwwRIABhggwwBABBhgiwABDBBhgiAADDBFggCECDDBEgAGGCDDAEAEGGCLAAEMEGGCIAAMMEWCAIQIMMESAAYYIMMAQAQYYIsAAQwQYYIgAAwwRYIAhAgwwRIABhggwwBABBhgiwABDBBhgiAADDBFggCECDDBEgAGGCDDAEAEGGCLAAEMEGGCIAAMMEWCAIQIMMESAAYYIMMAQAQYYIsAAQwQYYIgAAwwRYIAhAgwwRIABhggwwBABBhgiwABDBBhgiAADDBFggCECDDBEgAGGCDDAEAEGGCLAAEMEGGCIAAMMEWCAIQIMMESAAYYIMMAQAQYYIsAAQwQYYIgAAwwRYIAhAgwwRIABhggwwBABBhgiwABDBBhgiAADDBFggCECDDBEgAGGCDDAEAEGGCLAAEMEGGCIAAMMEWCAIdXdj/wvV30yyUd3dzgPsj/J3Rtt2d4b+7ZtP1a3z+3uMx/6yUcV4C1V1Z3d/Wzbx86+bdvHwvbRXIIAGCLAAEP2coB/2fYxt2/b9rGw/Tl79howwGPdXj4DBnhME2CAIQLMnlBVNX0MW6qqJwxun32sfb/3qj0V4Kp6elV9a1WdUFX7BvY331x3v6aqnl1VJw5sP6OqLqyqMwa2v72qrkyS7u4to1BV31NVP7bV3kO2vy/Jm6rqrIHtFyb53STnDGx/S1Vdub593MbbT1vvY/um7ucPZ88EuKq+P8l7ktyY5NeSXFtVp260/bVJ0t0PbP3DqapLk/xOkjcnufXIsWy0/d1Jbk9yXZLfqKqzN9o9rqqemOTmJK+tqlcmn4vwzm+TVXVJkp9N8sFdbz3M9oVJ3pTkPd39rxtvX7JuPznJ9Rtvf2+W3zx4QZJXJzl3w+0XJbkjyWuTvCXJwclnIEfbEwGuqhOSXJ7kh7v7+VlCfE6SG3Yd4TWAf1FV70q2jXBVPSfJzyd5WXdflOTTSV6z0fbzkrw1yY9094uS3J/kmVtsd/dnu/veJO/I8mD7nKq67sh/2+X2+j3/zSQ/2t1/UlVPqqpzq+rxu9w9yjcl+dV1+ylVdXFVXVBVT9rlaFW9IMnbk7wkydOSfF1VPXeXm0dtn5Hk2iRXdPfLktyT5Buq6qyqOmmD7YNJfqi7L0tyKMnVSa6rqlN2uf1I7IkAr07NcsNIlqdIf5jkcUmu2NVT0/VR8FVJfjzJ/VV1W7L5mfAbu/sD6/s/neT0jS5F/EuSg939Z+uZ7wVJXlVVN1fVize6HHA4ywPtO5J8c1W9papuqsWubpufSvLfSZ683jl/L8kvZnn2scXXffio9+9Ick2W2+Dbquq0He7uS3JVd/9Nkick+XCSZySbXH8/nOTkJOetJ1TPS3JVkl9I8rodn40eTvLEJGcnSXffkuXfszkzyaU73H1kuntP/ElycZLfT/Id68f7klyR5Lasv6+8o92nZPkB7c9yh7htw695X5JTj3r/K5J8IMmZ6+fO2Og4firJ69b3r07y20eOYce7X53kNev71yf5zyRv22D3/CQfSfJPSV6R5UTkmiyXY07f8fYzs8Tvt5JcvX7uq5L8UpIXbvC1H7e+/a4kn0jy9Rvdxl6c5K4kf5rk9evnvjPJrUnO3/H2K7M867kyyRvWphxMcssWX/sX+rOXzoDfn+SPk1xZVc/t7ge6+11ZAnn+rka7++PdfW93353lh3LykTPhqnpWVZ23w+0Huvue9cNK8u9J/q27P1lVL0lyY1WdvKv9o47jDd194/r+ryc5Jdu8SPOZJE+vqldkuZO8MclTq+rgLke7+1CWs5+buvtXerkkckuS05I8dcfbf53lGugFSb5y/dxHsjwA/59/LWsH+59d3743yzXZS3f8jOPI7h1Zrv++P8tJRrr7fVlua7u+Hnx7kvdmCf7ju/ul3X1zkrO2ep3p8zl+cvxo3X1fVb0zSWd5Yea8JP+V5MuT/PNGx/Cp9c7/5qr6UJY7xUUbbR9Ocm9VfayqbkpySZKXd/dndrlbVdXracL68WVZvucf3+Vusjz4VdXHkrw+ybXd/QdVdVGSv99g+4M56kW49es+M9vc1v4oy+Wmn6mqI/+86zdmeQDa0qEsL8D+XHc/sOux7v50Vb0vyQ9W1f1JTsryIPSXO979jyTvrKrbjzwAVdVVSU5PsvOv+wvZc/8r8vrrKd+W5Wz0viRv7f+9RrrVMVyX5CeTXNzdf7XRZiU5Icnfrm+f391/t8X2un9ikpcm+Ykkl69nalvsnpPkrO6+a/34uN7xC3EP2a8sl11eneQHerlGutX2s7I8NT8xya1b3dYecgzvTnJDd//jRntfluX672VZ7t83rM9INlNV12T5eV8+8T1/0LHstQAfsb4I1lveGdfd05K8O8n13b3TR+bPs//yJH++ZQjW3ROyXIf/h+7+8Jbb6/6DzsS33E1yYZJPdPeHtt6fMvX9Pmr/lCz9ueeL/uUv/fa5SU7o7p0/0/qix7JXAzypqk7q7vuGtkfvGMB2BBhgyF76LQiAY4oAAwwRYIAhAgwwRIABhggwwJD/AT3NjuaQb1lTAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 使用训练好的模型\n",
    "# 最后，使用训练的模型对单个图像进行预测。\n",
    "#  从测试数据集抓取图像。\n",
    "img = test_images[1]\n",
    "print(img.shape)\n",
    "\n",
    "# 将图像添加到批处理中。\n",
    "img = (np.expand_dims(img,0))\n",
    "print(img.shape)\n",
    "# 图像预测正确的标签：\n",
    "predictions_single = probability_model.predict(img)\n",
    "print(predictions_single)\n",
    "plot_value_array(1, predictions_single[0], test_labels)\n",
    "_ = plt.xticks(range(10), class_names, rotation=45)\n",
    "\n",
    "# 图像的预测,模型将按预期预测标签。：\n",
    "print(np.argmax(predictions_single[0]))"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.10"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
